//
// Copyright (c) 2024 BPer
//
#ifndef __BPerVideoEncoderBuffer2__
#define __BPerVideoEncoderBuffer2__

#include <bperutil/buffer2/BPerMediaBuffer2.h>

typedef struct{
	BPerMediaBuffer2 mediaBuffer;
	void (*getEVideo)(BPerMediaBuffer2* buf,BPerFrame* pframe);
	uint8_t * (*getEVideoRef)(BPerMediaBuffer2* buf,BPerFrame* frame);
	void (*putEVideo)(BPerMediaBuffer2* buf,BPerFrame* pframe);
	int32_t (*size)(BPerMediaBuffer2* buf);
	void (*resetIndex)(BPerMediaBuffer2* buf);
}BPerVideoEncoderBuffer2;

void bPer_create_videoEncoderBuffer2(BPerVideoEncoderBuffer2* buf,int pcachenum);
void bPer_destroy_videoEncoderBuffer2(BPerVideoEncoderBuffer2* buf);

#endif
